The Implications of Non-Functional Requirements for the Reengineering of Legacy Code

نویسندگان

  • Elizabeth Burd
  • Malcolm Munro
چکیده

Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works, must be obtained from the IEEE. Abstract This paper describes the process whereby we investigate the implementation of non-functional requirements and their implications on the reengineering process. Our work has so far concentrated on the identification of reusable units from existing legacy systems. However, the results from our approaches so far have found that the functionality is difficult to separate into separate units. We have found that certain aspects of the code tend to hold the units together. In this paper, we propose that these aspects be the implementation of non-functional requirements, and, that if these aspects can be filtered out, larger and more reusable object would be obtained through the use of reuse reengineering approaches. This paper describes the process by which we identify the non-functional requirements and evaluates the usefulness of the process through a number of case studies.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Quality Driven Software Migration of Procedural Code to Object-Oriented Design

In the context of software maintenance, legacy software systems are continuously re-engineered in order to correct errors, provide new functionality, or port them into modern platforms. However, software re-engineering activities should not occur in a vacuum, and it is important to incorporate non-functional requirements as part of the re-engineering process. We present an incremental reenginee...

متن کامل

Integration of Existing Programs into CORBA

In distributed object-oriented systems, middleware products like CORBA are employed to perform the actual distribution on a network of computers. Existing programs that are subject to distribution fall into two categories: (1) they lack structure and can only be reused by using wrapping and/or reengineering techniques, (2) the system was developed using object-based abstractions, but cannot dir...

متن کامل

Software Requirements And Its Application In The Reengineering Process

The reengineering process is oriented to perform corrective or adaptive maintenance to a legacy system by changing the structure of the system to satisfy user’s requirements [5]. Usually the initial step to perform this task is made by a reverse engineering process, which extracts external documentation from the functioning system in a way that the reengineering process can be performed. The pu...

متن کامل

Tracing All Around in Reengineering

0 7 4 0 7 4 5 9 / 0 2 / $ 1 7 . 0 0 © 2 0 0 2 I E E E during the reengineering process. We propose tracing “all around”—from existing code to the legacy system’s design to its requirements during reverse engineering, and from the modified requirements to the new design and the new code during development of the successor system. In effect, this means integrating traceability during reverse engi...

متن کامل

Requirements Reengineering from Legacy Information Systems Using Semiotic Techniques

Recovering users and systems requirements from existing information systems can be valuable in legacy systems reengineering. AMBOLS, a semiotic approach to requirements reengineering, considers recovering the requirements of an existing (legacy) system under the restriction that only the operational system and its current stakeholders are accessible, while the original system documentation may ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997